package dao;

import org.hibernate.*;
import Utils.HibernateUtil;
import Entity.*;
import dto.*;
import java.util.*;

public class MesaOcupacionDAO {
	
	private static MesaOcupacionDAO intances;
	private static SessionFactory sf;
	
	public static MesaOcupacionDAO getInstance()
	{
		if (intances == null)
		{
			sf = HibernateUtil.getSessionFactory();
			intances = new MesaOcupacionDAO();
		}
		return intances;
	}
	
	public MesaOcupacionEntity ObtenerOcupacionVigente (int nroMesa, List<ItemPedidoDTO> productos)
	{
		Session session = sf.openSession();
		MesaOcupacionEntity ocuapcacion;
		ProductoDAO hprd = ProductoDAO.getInstance();
		Query q = session.createQuery("from MesaOcupacionEntity mo, MesaEntity m where fechaIngreso is not null and fechaEgreso is null and m.numeroMesa = :numero");
		q.setParameter("numero", nroMesa);
		ocuapcacion = (MesaOcupacionEntity) q.uniqueResult();
		
		List<ItemPedidoDTO> areaba = new ArrayList<ItemPedidoDTO>();
		List<ItemPedidoDTO> areaca = new ArrayList<ItemPedidoDTO>();
		List<ItemPedidoDTO> areaco = new ArrayList<ItemPedidoDTO>();
		for (int i = 0; i< productos.size(); i++)
		{
			String area = hprd.ObtenerArea(productos.get(i).getPrducto().getNombre());
			if (area == "Barra")
			{
				areaba.add(productos.get(i));
			}
			if (area == "Cocina")
			{
				areaca.add(productos.get(i));
			}
			if (area == "Cafeteria")
			{
				areaco.add(productos.get(i));
			}
		}
		
		
		return null;
	}

}
